<?php if ( ! defined("BASEPATH")) exit("No direct script access allowed");

class Estoque extends CI_Controller {
		
	public function __construct(){
		parent::__construct();
		init_painel();
	}

	public function index(){
		$this->gerenciar();
	}
	
	public function cadastrar(){
		esta_logado();
		$this->form_validation->set_rules('nome', 'NOME', 'trim|required|ucwords');
		$this->form_validation->set_rules('valor', 'VALOR', 'required');
		$this->form_validation->set_rules('referencia', 'REFERÊNCIA', '');
		$this->form_validation->set_rules('valor_produto', 'VALOR DO PRODUTO', '');
		if ($this->form_validation->run()==TRUE):
			$dados = elements(array('nome'), $this->input->post(NULL, TRUE));
			$dados['valor'] = modificaDinheiroBanco($this->input->post('valor', TRUE));
			
			$this->estoque->do_insert($dados, FALSE);
			set_msg('msgok', 'Cadastro efetuado com sucesso.', 'sucesso');
			redirect(base_url('painel/estoque/cadastrar'));
		endif;
		$data = array(
			'tela' => 'cadastrar'
		);
		set_tema('footerinc', load_js(array('maskmoney/jquery.maskMoney.min', 'maskmoney/maskmoney-script.min', 'maskedinput/jquery.maskedinput.min', 'maskedinput/maskedinput-script.min', 'cidadesEstado.min', 
			'select2/select2.min', 'select2/select2_locale_pt-BR.min', 'select2/select2-script.min', 'datepicker/foundation-datepicker.min', 'datepicker/datepicker-script.min', 'app.min', 'valida_cpf', 'campos_dinamico')));
		set_tema('headerinc', load_css(array('select2/select2-foundation5.min', 'datepicker/foundation-datepicker.min')));
		set_tema('titulo', 'Cadastro de estoque');
		set_tema('conteudo', load_modulo('painel', 'estoque', $data));
		load_template();
	}

	public function gerenciar(){
		esta_logado();
		$data = array(
			'tela'	=> 'gerenciar',
			'query'	=> $query = $this->estoque->get_all()->result()
		);
		set_tema('headerinc', load_css(array('datatables/dataTables.foundation.min')));
		set_tema('footerinc', load_js(array('datatables/jquery.dataTables.min', 'datatables/dataTables.foundation.min', 'app')));
		set_tema('titulo', 'Listagem de estoque de produtos');
		set_tema('conteudo', load_modulo('painel', 'estoque', $data));
		load_template();
	}
	
	public function editar(){
		esta_logado();
		$idpedido = $this->uri->segment(4);
		$this->form_validation->set_rules('nome', 'NOME', 'trim|required|ucwords');
		$this->form_validation->set_rules('valor', 'VALOR', 'required');
		$this->form_validation->set_rules('referencia', 'REFERÊNCIA', '');
		$this->form_validation->set_rules('valor_produto', 'VALOR DO PRODUTO', '');
		if ($this->form_validation->run()==TRUE):
			$id_pedido = $this->input->post('idestoque', TRUE);
			$dados = elements(array('nome'), $this->input->post(NULL, TRUE));
			$dados['valor'] = modificaDinheiroBanco($this->input->post('valor', TRUE));
			
			$this->estoque->do_update($dados, array('id'=>$id_pedido), FALSE);
			auditoria('Edição de Pedido', 'O pedido "'.$this->input->post('nome', TRUE).'" foi editado.');
			set_msg('msgok', 'Alteração dos dados efetuado com sucesso.', 'sucesso');
			redirect(current_url());
		endif;
		$data = array(
			'tela'		=> 'editar',
			'idpedido'	=> $idpedido,
			'query'		=> $this->estoque->get_byid($idpedido)->row()
		);
		set_tema('footerinc', load_js(array('maskmoney/jquery.maskMoney.min', 'maskmoney/maskmoney-script.min', 'maskedinput/jquery.maskedinput.min', 'maskedinput/maskedinput-script.min', 'cidadesEstado.min', 
			'select2/select2.min', 'select2/select2_locale_pt-BR.min', 'select2/select2-script.min', 'datepicker/foundation-datepicker.min', 'datepicker/datepicker-script.min', 'app.min', 'campos_dinamico')));
		set_tema('headerinc', load_css(array('select2/select2-foundation5.min', 'datepicker/foundation-datepicker.min')));
		set_tema('titulo', 'Alteração de estoque');
		set_tema('conteudo', load_modulo('painel', 'estoque', $data));
		load_template();
	}

	public function aumentar(){
		if(is_admin() == FALSE):
			set_msg('msgerro', 'Seu usuário não tem permissão para executar esta operação.', 'erro');
			redirect(base_url('painel/estoque/gerenciar'));
		endif;
		if (is_admin(TRUE)):
			$idproduto = $this->uri->segment(4);
			if ($idproduto != NULL):
				$query = $this->produtos->get_byid($idproduto);
				if ($query->num_rows()==1):
					$query = $query->row();
					$dados['quantidade'] = $query->quantidade + 1;
					$this->produtos->do_update($dados, array('id'=>$idproduto), FALSE);
					set_msg('msgok', 'Alteração efetuada com sucesso', 'sucesso');
				endif;
			else:
				set_msg('msgerro', 'Escolha um produto.', 'erro');
			endif;
		endif;
		redirect('painel/estoque/gerenciar');
	}

	public function diminuir(){
		if(is_admin() == FALSE):
			set_msg('msgerro', 'Seu usuário não tem permissão para executar esta operação.', 'erro');
			redirect(base_url('painel/estoque/gerenciar'));
		endif;
		if (is_admin(TRUE)):
			$idproduto = $this->uri->segment(4);
			if ($idproduto != NULL):
				$query = $this->produtos->get_byid($idproduto);
				if ($query->num_rows()==1):
					$query = $query->row();
					$dados['quantidade'] = $query->quantidade - 1;
					$this->produtos->do_update($dados, array('id'=>$idproduto), FALSE);
					set_msg('msgok', 'Alteração efetuada com sucesso', 'sucesso');
				endif;
			else:
				set_msg('msgerro', 'Escolha um produto.', 'erro');
			endif;
		endif;
		redirect('painel/estoque/gerenciar');
	}
}

/* End of file estoque.php */
/* Location: ./application/controllers/estoque.php */
